package algorithms;

import java.util.ArrayList;
import animationEngine.AnimationState;

/**
 * This interface describes all the methods implemented by the search algorithms.  If you are
 * adding in another algorithm it must implement this interface.
 * 
 * @author Andrei Palade
 * @author David McBrierty
 * @author Garry Sharp
 * @author Hristo Georgiev
 * @author John Dennis
 * @author Marco Sarconi
 * @version 1.0.1
 */

public interface Algorithm {	
	
	/**
	 * This method should return all of the animation states for animating the search for
	 * the given pattern in the given text.
	 * 
	 * @return an array list of animation states for the animations
	 */
	public ArrayList<AnimationState> getStates(String text, String pattern);

}






